package com.ibangnuo.api.withdrawal;

import com.ibangnuo.framework.domain.Withdrawal;
import com.ibangnuo.framework.domain.request.withdrawal.WithdrawalRequest;
import com.ibangnuo.framework.model.response.ObjectResult;
import com.ibangnuo.framework.model.response.QueryResponseResult;
import com.ibangnuo.framework.model.response.ResponseResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;

/**
 * @Author: wwy
 * @Date: 2020-03-12 11:59
 */
@Api(value = "提现管理", description = "提现管理增删改查")
public interface WithdrawalControllerApi {

    @ApiOperation("提现记录查询")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "page", value = "当前页码", required = true, paramType = "path", dataType = "int"),
            @ApiImplicitParam(name = "size", value = "每页的条数", required = true, paramType = "path", dataType = "int")
    })
    QueryResponseResult findList(int page, int size, WithdrawalRequest withdrawalRequest);

    @ApiOperation("提现记录添加")
    ResponseResult add(Withdrawal withdrawal);

    @ApiOperation("根据orderTotalMonthId查询")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "orderTotalMonthId", value = "佣金月统计id", required = true, paramType = "path", dataType = "String"),
    })
    ObjectResult findByOrderTotalMonthId(String orderTotalMonthId);

    @ApiOperation("根据id修改")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "id", value = "佣金提现id", required = true, paramType = "path", dataType = "String"),
    })
    ResponseResult update(String id,Withdrawal withdrawal);
}
